Telegram Group & Telegram Channel
#تجربه

امروز یک اتفاق جالبی برام افتاد گفتم بگم :

حدودا ۲ سال قبل یک پروژه‌ای رو وارد شدم که برای ۲ تا شریک بود (هر ۲ نیروی فنی) اما دیدها و فیچرهای متفاوت رو نیاز داشتند.
وقتی من وارد شدم از درگیری‌هاشون گذشته بود؛ توی مصاحبه من هر ۲ نفر بودند ولی وقتی همکاری شروع شد فقط ۱ نفر بود و خیلی چیزا هم عوض شده بود.
پیگیر شدم فهمیدم از هم جداشدند بصورت دوستانه و قراره هرکسی با تکنیک خودش و فیچرهای مدنظر خودش کار رو پیش ببره؛ درآمد و ... همه چیز هم قبل جداشدن با رضایت ۲ نفر تقسیم شده بود.
از روی رفاقیت زیاد شاید؛ هرکدوم تو اولین اقدام یک سهم مثلاْ ۵٪ به شریکی که دیگه توی شرکتش نیست هم داده بود.
کسی که من باهاش شروع به کار کردم؛ آدم خیلی حرفه‌ای نبود از نظر کد اما توی بیزینس کد زدن و کار رو یادگرفته بود؛ شریکش اما آدم آکادمیک و بسیار بسیار با سواد بالا در زمینه فنی بود.
ما کار رو شروع کردیم؛ نیروهایی که گرفتیم نهایتا میدیور بودند؛ دستمزدها پایین اما اجازه میداد بهشون انگیزه (پاداش) بدیم؛ و هزینه اینکار هم نیاز به آموزش دادن و البته شلوغ شدن خودمون موقع code review بود.
با همین فرمون و همونطور که حدس زدید چیزی به اسم clean code, code optimization, ... هم نداشتیم.
تقریبا هر ۲ هفته فیچر تحویل می‌شد؛ یک گروهی با فیچر کار میکرد نهایتا ۱ هفته هم مشکلات برطرف می‌شد و دپلوی انجام می‌شد؛ اما تو کل این مسیر تست نویسی موارد اصلی رو داشتیم.
مثلا ما هیچوقت تست نویسی دیتابیس؛ ستون‌ها و ... رو انجام ندادیم اما تست نویسی model, schema, request, response رو توی بکند داشتیم.
توی ۶ ماه پروژه لانچ شد و توی ماه ۹ام قراردادهای اصلیش شروع شد؛ من هم ۳ ماه بعدش وقتی todo plan, ... رو نوشته بودیم و می‌دونستیم تا ۶ ماه آینده تسک‌های اصلی چی هست (تست‌نویسی؛ تمیزکردن و اپتیمایز کردن) برای یک موقعیت شغلی بهتر از تیم خداحافظی کردم و مدیر فنی دیگری وارد شد.
.
امروز متوجه شدم شرکتی که باهاش کار میکردم؛ شرکت رقیب (یعنی دوستش) رو خریده و صاحب همه امتیاز و کدها و فیچر و ... شده.
.
تفاوت تیم من و شرکت رقیب این بود که من و مدیرم جفتمون بیزینس رو دیدیم و می‌دونیم یک چیزایی مثل clean code, optimization , .... رو می‌شه حذف کرد ولی توی کارمون اولین باشیم؛ می‌دونیم با سرمایه‌گذاری روی نیروی تازه‌کار می‌شه به شرکت اجازه خطا کردن داد چون پول بیشتری نگه‌داشتیم و البته وقتی دستمزد کمتری پرداخت می‌کنید (چون ما بیشتر نیروهامون تازه کار و میدیور بودند چندتا متخصص هم داشتیم ولی خب خیلی کمتر نسبت به رقیب که برای هر حوزه حداقل ۱ نیروی متخصص آورده بود) پاداش و هدایای انگیزشی می‌شه به نیروها داد.

.
شرکت رقیب حدودا ۷ ماه بعد از ما نسخه اولیه رو لانچ کرد ۷ ماهی که به ما بازار هدف رو یاد داد؛ نشون داد چقدر فرضیات ما اشتباه بوده و ...
توی این ۷ ماه مشتری‌های ما پر توقع شدند؛ وقتی شرکت رقیب با نسخه اولیه اومد و چون این دانش بازار رو نداشت بازاریابیش همیشه به نفع ما تموم می‌شد؛ مشتری رو متقاعد میکرد که همچین سیستمی‌ رو نیاز داره.
اما مشتری قبل خرید تحقیق میکرد و سیستم مارو می‌دید؛ فیچرهای بیشتر + قیمت ارزون‌تر مجاب می‌شد از ما خرید کنه چون ما نیروهامون ارزونتر بود و هزینه کمتری برای راه‌اندازی داده بودیم.

همه این‌هارو گفتم چون از بچه‌هایی که کتاب fluent python رو می‌خونند سوال ازم میشه شما همیشه اینجوری کد میزنید ؟ جوابش هم قطعا خیر هست.

همینجا هشدار باید بدم اگر رفتید سراغ تکنیک بالا حتما باید تجربه و سابقه اش رو داشته باشید. مدیریت همچین تیم و همچین وضعیت کدی با کوچکترین اشتباه تبدیل به بحران میشه.
این تکنیک مثل یک تیغ تیز هست که شما روی لبه‌اش دارید راه میرید؛ اگر این کار رو درست انجام بدید برنده خواهید بود.
اضافه کردن تست نویسی و هزینه و زمان صرف کردن روی این مورد اما برای من این لبه تیز تیغ رو تبدیل به طناب یا پل باریک کرد.

پ.ن :
آدم آکادمیک بودن ربطی به دانشگاه رفتن و نرفتن نداره؛ منظور تجربه پیاده‌سازی سیستم هست. آدمی که دوره زیادی دیده و کتاب‌های زیادی خونده اما هیچوقت سیستم کامل پیاده‌سازی نکرده یا حتی بطور جداگانه روی بخش‌های مختلف سیستم و فقط با دید فنی کار کرده.
👍70158❤‍🔥4🦄2



tg-me.com/pyHints/522
Create:
Last Update:

#تجربه

امروز یک اتفاق جالبی برام افتاد گفتم بگم :

حدودا ۲ سال قبل یک پروژه‌ای رو وارد شدم که برای ۲ تا شریک بود (هر ۲ نیروی فنی) اما دیدها و فیچرهای متفاوت رو نیاز داشتند.
وقتی من وارد شدم از درگیری‌هاشون گذشته بود؛ توی مصاحبه من هر ۲ نفر بودند ولی وقتی همکاری شروع شد فقط ۱ نفر بود و خیلی چیزا هم عوض شده بود.
پیگیر شدم فهمیدم از هم جداشدند بصورت دوستانه و قراره هرکسی با تکنیک خودش و فیچرهای مدنظر خودش کار رو پیش ببره؛ درآمد و ... همه چیز هم قبل جداشدن با رضایت ۲ نفر تقسیم شده بود.
از روی رفاقیت زیاد شاید؛ هرکدوم تو اولین اقدام یک سهم مثلاْ ۵٪ به شریکی که دیگه توی شرکتش نیست هم داده بود.
کسی که من باهاش شروع به کار کردم؛ آدم خیلی حرفه‌ای نبود از نظر کد اما توی بیزینس کد زدن و کار رو یادگرفته بود؛ شریکش اما آدم آکادمیک و بسیار بسیار با سواد بالا در زمینه فنی بود.
ما کار رو شروع کردیم؛ نیروهایی که گرفتیم نهایتا میدیور بودند؛ دستمزدها پایین اما اجازه میداد بهشون انگیزه (پاداش) بدیم؛ و هزینه اینکار هم نیاز به آموزش دادن و البته شلوغ شدن خودمون موقع code review بود.
با همین فرمون و همونطور که حدس زدید چیزی به اسم clean code, code optimization, ... هم نداشتیم.
تقریبا هر ۲ هفته فیچر تحویل می‌شد؛ یک گروهی با فیچر کار میکرد نهایتا ۱ هفته هم مشکلات برطرف می‌شد و دپلوی انجام می‌شد؛ اما تو کل این مسیر تست نویسی موارد اصلی رو داشتیم.
مثلا ما هیچوقت تست نویسی دیتابیس؛ ستون‌ها و ... رو انجام ندادیم اما تست نویسی model, schema, request, response رو توی بکند داشتیم.
توی ۶ ماه پروژه لانچ شد و توی ماه ۹ام قراردادهای اصلیش شروع شد؛ من هم ۳ ماه بعدش وقتی todo plan, ... رو نوشته بودیم و می‌دونستیم تا ۶ ماه آینده تسک‌های اصلی چی هست (تست‌نویسی؛ تمیزکردن و اپتیمایز کردن) برای یک موقعیت شغلی بهتر از تیم خداحافظی کردم و مدیر فنی دیگری وارد شد.
.
امروز متوجه شدم شرکتی که باهاش کار میکردم؛ شرکت رقیب (یعنی دوستش) رو خریده و صاحب همه امتیاز و کدها و فیچر و ... شده.
.

تفاوت تیم من و شرکت رقیب این بود که من و مدیرم جفتمون بیزینس رو دیدیم و می‌دونیم یک چیزایی مثل clean code, optimization , .... رو می‌شه حذف کرد ولی توی کارمون اولین باشیم؛ می‌دونیم با سرمایه‌گذاری روی نیروی تازه‌کار می‌شه به شرکت اجازه خطا کردن داد چون پول بیشتری نگه‌داشتیم و البته وقتی دستمزد کمتری پرداخت می‌کنید (چون ما بیشتر نیروهامون تازه کار و میدیور بودند چندتا متخصص هم داشتیم ولی خب خیلی کمتر نسبت به رقیب که برای هر حوزه حداقل ۱ نیروی متخصص آورده بود) پاداش و هدایای انگیزشی می‌شه به نیروها داد.

.
شرکت رقیب حدودا ۷ ماه بعد از ما نسخه اولیه رو لانچ کرد ۷ ماهی که به ما بازار هدف رو یاد داد؛ نشون داد چقدر فرضیات ما اشتباه بوده و ...
توی این ۷ ماه مشتری‌های ما پر توقع شدند؛ وقتی شرکت رقیب با نسخه اولیه اومد و چون این دانش بازار رو نداشت بازاریابیش همیشه به نفع ما تموم می‌شد؛ مشتری رو متقاعد میکرد که همچین سیستمی‌ رو نیاز داره.
اما مشتری قبل خرید تحقیق میکرد و سیستم مارو می‌دید؛ فیچرهای بیشتر + قیمت ارزون‌تر مجاب می‌شد از ما خرید کنه چون ما نیروهامون ارزونتر بود و هزینه کمتری برای راه‌اندازی داده بودیم.

همه این‌هارو گفتم چون از بچه‌هایی که کتاب fluent python رو می‌خونند سوال ازم میشه شما همیشه اینجوری کد میزنید ؟ جوابش هم قطعا خیر هست.

همینجا هشدار باید بدم اگر رفتید سراغ تکنیک بالا حتما باید تجربه و سابقه اش رو داشته باشید. مدیریت همچین تیم و همچین وضعیت کدی با کوچکترین اشتباه تبدیل به بحران میشه.
این تکنیک مثل یک تیغ تیز هست که شما روی لبه‌اش دارید راه میرید؛ اگر این کار رو درست انجام بدید برنده خواهید بود.
اضافه کردن تست نویسی و هزینه و زمان صرف کردن روی این مورد اما برای من این لبه تیز تیغ رو تبدیل به طناب یا پل باریک کرد.

پ.ن :
آدم آکادمیک بودن ربطی به دانشگاه رفتن و نرفتن نداره؛ منظور تجربه پیاده‌سازی سیستم هست. آدمی که دوره زیادی دیده و کتاب‌های زیادی خونده اما هیچوقت سیستم کامل پیاده‌سازی نکرده یا حتی بطور جداگانه روی بخش‌های مختلف سیستم و فقط با دید فنی کار کرده.

BY Python Hints


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/pyHints/522

View MORE
Open in Telegram


Python Hints Telegram | DID YOU KNOW?

Date: |

What Is Bitcoin?

Bitcoin is a decentralized digital currency that you can buy, sell and exchange directly, without an intermediary like a bank. Bitcoin’s creator, Satoshi Nakamoto, originally described the need for “an electronic payment system based on cryptographic proof instead of trust.” Each and every Bitcoin transaction that’s ever been made exists on a public ledger accessible to everyone, making transactions hard to reverse and difficult to fake. That’s by design: Core to their decentralized nature, Bitcoins aren’t backed by the government or any issuing institution, and there’s nothing to guarantee their value besides the proof baked in the heart of the system. “The reason why it’s worth money is simply because we, as people, decided it has value—same as gold,” says Anton Mozgovoy, co-founder & CEO of digital financial service company Holyheld.

The messaging service and social-media platform owes creditors roughly $700 million by the end of April, according to people briefed on the company’s plans and loan documents viewed by The Wall Street Journal. At the same time, Telegram Group Inc. must cover rising equipment and bandwidth expenses because of its rapid growth, despite going years without attempting to generate revenue.

Python Hints from tr


Telegram Python Hints
FROM USA